// // getdata.js
//
// import { ref, onMounted, onBeforeUnmount, reactive } from "vue";
// import * as mqtt from "mqtt/dist/mqtt.min";
//
// export function getData() {
//   let realMessage = reactive({});
//   let client = reactive({
//     connected: false
//   } as mqtt.MqttClient);
//   const topics = '';
//   const connection = reactive({
//     clientId: "emqx_vue3_" + Math.random().toString(16).substring(2, 8),
//     username: "admin",
//     password: "@Zyz18802283164",
//     clean: true,
//     connectTimeout: 30 * 1000, // ms
//     reconnectPeriod: 4000 // ms
//   });
//   // 在组件挂载时订阅 MQTT 数据
//   onMounted(() => {
//     const { ...options } = connection;
//     client = mqtt.connect("ws://59.110.225.60:8083/mqtt", options); // 替换成您的 MQTT 服务器地址
//     client.on("connect", () => {
//       console.log("Connected to MQTT broker");
//       // 这里进行您的 MQTT 订阅操作
//         client.subscribe(topics, err => {
//           if (!err) {
//             console.log("Subscribed to topic");
//           } else {
//             console.error("Failed to subscribe to topic", err);
//           }
//         });
//
//     })
//     client.on("reconnect", error => {
//       console.log("正在重连:", error);
//     });
//
//     client.on("message", (topic, message) => {
//       // 处理收到的消息
//       realMessage = { topic, message: JSON.parse(message.toString()) };
//       // 可以根据需求对收到的数据进行处理
//     });
//   });
//
//   // 在组件卸载前取消 MQTT 订阅并断开连接
//   onBeforeUnmount(() => {
//     if (client) {
//       client.unsubscribe(topics, err => {
//         if (!err) {
//           console.log("Unsubscribed from topic");
//         } else {
//           console.error("Failed to unsubscribe from topic", err);
//         }
//         client.end(); // 断开 MQTT 连接
//       });
//     }
//   });
//
//   return {
//     realMessage
//     // 返回其他可能需要的数据或方法
//   };
// }
